package com.ib.algokit.forex;

import java.io.Serializable;
import java.util.Set;


/**
 * Holds pair states at certain point in time.<br/>
 * Holds the following associated variables:
 * <ul>
 * <li>currentPairs(Set&lt;ChangeDetails&gt;)</li>
 * </ul>
 * @author dmisev
 */
public class ForexPairStates implements Serializable{
    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	/**
     * private final Set&lt;ChangeDetails&gt; currentPairs;
     */
    private final Set<ChangeDetails> currentPairs;

    
    private final double deviation;
    
    private final double percChange;
    
    private final double averageAlternativePercChange;
    
    public ForexPairStates(Set<ChangeDetails> currentPairs, double deviation, double percChange, double averageAlternativePercChange){
        this.currentPairs=currentPairs;
        this.deviation=deviation;
        this.percChange=percChange;
        this.averageAlternativePercChange=averageAlternativePercChange;
    }
    /**
     * returns the associated currentPairs(Set&lt;ChangeDetails&gt;)
     * @return
     */
    public Set<ChangeDetails> getCurrentPairs(){
        return this.currentPairs;
    }
    
    public double getDeviation(){
        return this.deviation;
    }
    
    public double getPercChange(){
        return this.percChange;
    }
    
    public double getAverageAlternativePercChange(){
        return this.averageAlternativePercChange;
    }
}
